Python 您所在的位置:网站首页 python web服务器框架 Python

Python

#Python| 来源: 网络整理| 查看: 265

1、WSGI

web server gateway interface

一个框架定义的简单通用的接口

Web服务器网关接口(Python Web Server Gateway Interface,缩写为WSGI)是为Python语言定义的Web服务器和Web应用程序或框架之间的一种简单而通用的接口。

flask框架内有默认的服务器 Nginx 会启动框架内内置的server

2、默认情况下,只能是本机访问。

如果host改成:0.0.0.0 外网可以通过ip地址来访问

3、路由的请求和响应

浏览器地址栏输入路由: 172.29.2.50 ——> 服务器——> app——->有没有这个路由——->

就会执行路由匹配的函数——> 返回对应的函数值 ——-> response——> 返回客户端的浏览器

请求: request

请求的方法是什么? method:get post

请求头:这些都可以被称为请求头

请求体:只有post的情况下,才会看到请求体,一般的情况下是没有的。

响应:response

响应行:状态码—> 200 代表OK 还有其他的状态码 代表的其他不同的意思

响应头: Content-length; Content-type;Date 等相关信息

响应体:标签上的相关信息

5、路由

def route(self, rule, **options):

def decorator(f):

self.add_url_rule(rule, endpoint, f, **options)

return f

return decorator

以下装饰器的作用 等价于 @app.route 的方法

其实就是讲 rule 和 视图函数进行了绑定,通过 add_url_rule() 实现的绑定

def index():

return ‘welcome everyone!’

将这个规则和函数都绑定在一块了

app.add_url_rule(‘/index’, view_func = index)

6、路由的变量规则——> UUID 唯一的标识码 类似于身份证的作用

Original: https://blog.csdn.net/wldcn3/article/details/128749041Author: 周杰伦的粉丝Title: Python-Flask-2023.1.22

相关阅读 Title: 豆瓣电影Top250数据分析

此项目是b站上一视频的学习成果,此项目主要技术就是用了python爬虫搜集数据然后用Flask框架、Echarts、WordCloud等技术实现数据可视化

视频地址:Python爬虫编程基础5天速成(2021全新合集)Python入门+数据分析_哔哩哔哩_bilibili

先展示下效果吧

Python-Flask-2023.1.22

Python-Flask-2023.1.22

Python-Flask-2023.1.22

爬虫的代码在上一篇介绍过,可视化分析主要用了

Python-Flask-2023.1.22这五个页面,那么接下来就直接整flask的核心代码咯 from flask import Flask,render_template,request import sqlite3 app = Flask(__name__) datalist = [] #设为全局变量,用于存储数据和分页使用 movieScore = [] #评分 num = [] #每个评分所统计的电影数量 page=[1,2,3,4,5,6,7,8,9,10] @app.route('/') def index(): return render_template('first.html') @app.route('/first') def first(): return index() @app.route('/movie') def movie(): if len(datalist) == 0: # print("关于电影数据库被启动了!") con = sqlite3.connect('./movieTop250.db') cur = con.cursor() sql = "select * from movie250" data = cur.execute(sql) for item in data: datalist.append(item) cur.close() con.close() page=1 movies=[] #对列表进行分割 for i in range(25): movies.append(datalist[i]) return render_template('movie.html',movies=movies,page=page) #进行分页 @app.route('/movie/start=') def movie2(page): movies=[] #对列表进行分割 if page: #page存在 first=(page-1)*25 #首页 last=page*25 #尾页 else : first=0 #首页 last=25 #尾页 for i in range(first,last): movies.append(datalist[i]) #列表分割完成 if page == 1: return render_template('movie.html',movies=movies,page=page) elif page == 2: return render_template('movie.html',movies=movies,page=page) elif page == 3: return render_template('movie.html',movies=movies,page=page) elif page == 4: return render_template('movie.html',movies=movies,page=page) elif page == 5: return render_template('movie.html',movies=movies,page=page) elif page == 6: return render_template('movie.html',movies=movies,page=page) elif page == 7: return render_template('movie.html',movies=movies,page=page) elif page == 8: return render_template('movie.html',movies=movies,page=page) elif page == 9: return render_template('movie.html',movies=movies,page=page) elif page == 10: return render_template('movie.html',movies=movies,page=page) else : return render_template('movie.html',movies=movies,page=page) @app.route('/score') def score(): if (movieScore == [] or num == []): # print("关于评分数据库被启动了!") con = sqlite3.connect('./movieTop250.db') cur = con.cursor() sql = "select score,count(score) from movie250 group by score" data = cur.execute(sql) for item in data: #是元组类型 movieScore.append(item[0]) num.append(item[1]) cur.close() con.close() return render_template('score.html',movieScore=movieScore,num=num) @app.route('/word') def word(): return render_template('word.html') @app.route('/team') def team(): return render_template('team.html') @app.route('/echarts') def echarts(): return render_template('test_echarts.html') if __name__ == "__main__": app.run(debug=True)

Original: https://blog.csdn.net/weixin_53011574/article/details/122346349Author: 低调$(生活)Title: 豆瓣电影Top250数据分析

原创文章受到原创版权保护。转载请注明出处:https://www.johngo689.com/375364/

转载文章受原作者版权保护。转载请注明原作者出处!



【本文地址】

公司简介

联系我们

今日新闻

    推荐新闻

    专题文章
      CopyRight 2018-2019 实验室设备网 版权所有